In the context of computing systems and devices, an object can be defined as a run-time unit that is capable of receiving messages, processing data, and exchanging other messages with other objects. Each object is considered to be an instantiation of a class. An object can have many attributes. However, a user might be interested only in a particular group of attributes at a given time. Accordingly, it can in some instances assist a user to be able to view only the attributes of interest. For instance, while an application program typically includes many variables and pointers, the user might only want to check a small set of them during a debugging session. The user also might want to control the manner in which the attributes are presented in the view, perhaps having the attributes presented as a node-and-branch tree, or a table, or even a group of icons. Of course, during different sessions, different attributes will be of interest to the user.
Usually an object creator who created the object is responsible for creating a view with which object attributes requested by a user can be presented. It is generally not easy, however, for the creator to handle all the various customizable presentation requests that may arise. A user can encounter problems such as having to make separate requests for different objects and being unable to control the presentation form. Even more fundamentally, there are no effective and efficient mechanisms for presenting at the same time attributes from different objects. Accordingly, there is a need for some type of attribute presenter that can easily handle customizable presentation requests for presenting attributes from one object or from multiple objects at the same time.